干货福利| 最全计算语言学(包括NLP实践)自学路线!
计算语言学(工业界更喜欢偏实践性的称呼:自然语言处理)是近年来非常热门的应用语言学分支(计算机与语言学的交叉学科),比尔盖茨曾说:“语言理解是人工智能领域皇冠上的明珠”,由此可见其在人工智能时代发展中的重要地位!最近甚至有相关领域的学生一毕业就年薪百万(相关报道:年薪200万的NLP毕业生),成为大佬很难,不过大家也可以入门学一点,无论对自己的生活、学习、工作都会有所帮助。对此,学长整理了NLP的学习路径,免费分享给大家!
本文包括基础知识(数学、统计学、编程)、数据分析与挖掘、机器学习、深度学习、强化学习、NLP理论与应用六大部分,其中基础知识中的编程使用的是简单易懂的Python语言,最后还会提供给大家一些相关领域的资源网站、前沿paper、会议书籍等等,欢迎大家关注!(选择下文提供的网址,复制粘贴后使用浏览器即可进入)
01
基础知识
1数学
1.1数学理论基础
数学基础最主要是高等数学、线性代数、概率论与数理统计三门课程:
数学基础:高等数学 https://zhuanlan.zhihu.eom/p/36311622
数学基础:线性代数 https://zhuanlan.zhihu.Com/p/36584206
数学基础:概率论与数理统计 https://zhuanlan.zhihu.Com/p/36584335
1.2机器学习数学基础
机器学习的数学基础资料下载:
1) 机器学习的数学基础.docx中文版。
2) 斯坦福大学机器学习的数学基础.pdf原版英文材料。
下载链接:https://pan.baidu.Com/s/1LaUlrJzy98CG1Wma9FgBtg 提取码:hktx
2统计学
入门教材:深入浅出统计学 进阶教材:商务与经济统计
推荐视频:
3编程
3.1 Python 安装:
Python安装包,我推荐下载Anaconda, Anaconda是一个用于科学计算的 Python发行版,支持Linux, Mac, Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本Python并存、切换以及各种第三方包安装问题。
下载地址:https://www.anaconda.com/download/ 推荐选Anaconda (python 3.7版本)
IDE :推荐使用pycharm,社区版免费下载地址:https://www.jetbrains.com/
安装教程:
Anaconda+Jupyter notebook+Pycharm:
https://zhuanlan.zhihu.eom/p/59027692
Ubuntu18.04 深度学习环境配置(CUDA9+CUDNN7.4+TensorFlow1.8):
https://zhuanlan.zhihu.com/p/50302396
3.2 python入门的资料推荐
a.廖雪峰python学习笔记,https://blog.csdn.net/datawhale/article/category/7 779959
b. python入门笔记,作者李金。
下载链接:https://pan.baidu.eom/s/1IPZI5rygbIh5 R5OuTHajzA 提取码:2bzh
c. 南京大学python视频教程。
查看地址:https://www.icourse163.org/course/0809NJU004-10015710057from
=study
看完这三个资料后python基本达到入门水平,可以使用scikit-learn等机器学习库来解决机器学习的问题了。
3.3代码规范与练习题
代码规范:https://zhuanlan.zhihu.eom/p/59763076
numpy练习题:https://zhuanlan.zhihu.eom/p/57872490
pandas练习题:
https://zhuanlan.zhihu.eom/p/5664466902
数据分析与挖掘
1数据分析的基础书籍
《利用python进行数据分析》
这本书含有大量的实践案例,你将学会如何利用各种Python库(包括NumPy, Pandas、Matplotlib以及I Python等)高效地解决各式各样的数据分析问题。
2.特征工程
https://blog.csdn.net/Datawhale/article/details/83033869
3.数据挖掘项目
https://blog.csdn.net/datawhale/article/details/80847662
03
机器学习
1公开课
1.1 吴恩达《Machine Learning》
这绝对是机器学习入门的首选课程,没有之一!即便你没有扎实的机器学习所需的扎实的概率论、线性代数等数学基础,也能轻松上手这门机器学习入门课。
课程主页:https://www.coursera.org/learn/machine-learning
中文视频:网易云课堂由黄海广等人翻译了中文字幕。
中文笔记及作业代码:https://github.com/fengdu78/Coursera-ML-AndrewNg- Notes
1.2吴恩达机器学习课程CS229
吴恩达在斯坦福教授的机器学习课程,有更多的数学要求和公式的推导,难度稍大一些。该课程对机器学习和统计模式识别进行了广泛介绍。
课程主页:http://cs229.stanford.edu/
中文视频:http://open.163.com/special/opencourse/machinelearning.html
中文笔记:https://kivy-cn.github.io/Stanford-CS-229-CN/#/
速查表:这份给力的资源贡献者是一名斯坦福的毕业生Shervine Amidi。
https://zhuanlan.zhihu.eom/p/56 534902
作业代码:https://github.eom/Sierkinhane/CS229-ML-Implements
1.3公开课:林轩田《机器学习基石》
台湾大学林轩田老师的《机器学习基石》课程由浅入深、内容全面,基本涵盖了 机器学习领域的很多方面,侧重于机器学习理论知识。
中文视频:https://www.bilibili.eom/video/av36731342
中文笔记:https://redstonewill.eom/eategory/ai-notes/lin-ml-foundations/
配套教材:《Learning From Data》,在线书籍主页:http://amlbo ok.eom/
1.4公开课:林轩田《机器学习技法》
《机器学习技法》课程是《机器学习基石》的进阶课程。主要介绍了机器学习领 域经典的一些算法,难度要略高于《机器学习基石》。
中文视频:https://www.bilibili.eom/video/av36760800
中文笔记:https://redstonewill.eom/eategory/ai-notes/lin-ml-teehniques/
2书籍
2.1 «机器学习》
周志华的《机器学习》被称为“西瓜书”。适合中阶读者自学使用,入门时学习这本书籍难度偏高。
配合《机器学习实战》一起学习,效果更好!
读书笔记:https://www.enblogs.eom/limitlessun/p/8505647.html#_label0 公式推导:https://datawhaleehina.github.io/pumpkin-book/#/
课后习题:
https://zhuanlan.zhihu.com/c_10138502918878453762.2 «统计学习方法》
李航《统计学习方法
讲课 PPT:https://github.com/fengdu78/lihang-code/tree/master/ppt
读书笔记:
• http://www.cnblogs.eom/limitlessun/p/8611103.html
• https://github.com/SmirkCao/Lihang
参考笔记:https://zhuanlan.zhihu.eom/p/36378498
代码实现:https://github.com/fengdu78/lihang-code/tree/master/code
2.3 «Scikit-Learn与TensorFlow机器学习实用指南》
这本《Scikit-Learn与TensorFlow机器学习实用指南》非常适合提升你的机器学习实战编程能力。
全书代码:https://github.com/ageron/handson-ml
3实战
3.1 Kaggle 比赛
比赛是提升自己机器学习实战能力的最有效的方式
Kaggle 主页:
https://www.kaggle.com/
Kaggle路线:
https://github.com/apachecn/kaggle
3.2工具
Scikit-Learn 官方文档:https://scikit-learn.org/stable/index.html
中文文档(0.19) : http://sklearn.apachecn.org/#/
Scikit-Learn作为机器学习一个非常全面的库,是一份不可多得的实战编程手册。
04
深度学习
1公开课
1.1 吴恩达《Deep Learning》
在吴恩达开设了机器学习课程之后,发布的《Deep Learning))课程也备受好评,吴恩达老师的课程最大的特点就是将知识循序渐进的传授给你,是入门学习不可多得良好视频资料。
整个专题共包括五门课程:
01 .神经网络和深度学习;02.改善深层神经网络-超 参数调试、正则化以及优化;03.结构化机器学习项目;04.卷积神经网络;05.序 列模型。
课程视频
网易云课堂:https://mooc.study.163.eom/university/deeplearning_ai#/c
Coursera:
https://www.coursera.org/specializations/deep-learning课程笔记
之前编写过吴恩达老师机器学习个人笔记黄海广博士带领团队整理了中文笔记:
https://github.com/fengdu78/deeplearning_ai_books
参考论文
吴恩达老师在课程中提到了很多优秀论文,黄海广博士整理如下:
https://github.com/fengdu78/deeplearning_ai_books/tree/master/%E5%8F%82 %E8%80%83%E8%AE%BA%E6%96%87
课程PPT及课后作业
吴恩达深度学习课程,包含课程的课件、课后作业和一些其他资料:
https://github.com/stormstone/deeplearning.ai
1.2 Fast.ai «程序员深度学习实战》
说到深度学习的公开课,与吴恩达《Deep Learning》并驾齐驱的另一门公开课 便是由Fast.a i出品的《程序员深度学习实战》。这门课最大的特点便是“自上而 下”而不是“自下而上”,是绝佳的通过实战学习深度学习的课程。
视频地址
B站地址(英文字幕):
https://www.bilibili.com/video/av18904696?from=search&seid=108138375365 95120136
CSDN地址(2017版中文字幕):
https://edu.csdn.net/course/detail/5192
课程笔记
英文笔记原文:
https://medium.com/@hiromi_suenaga/deep-learning-2-part-1-lesson-1-602f 73869197
由ApacheCN组织的中文翻译:
https://github.com/apachecn/fastai-ml-dl-notes-zh
1.3 CS230 Deep Learning
斯坦福的深度学习课程CS23。从内容来看,涵盖了CNNs,RNNs,LSTM, Adam,Dropout,BatchNorm, Xavier/He initialization 等深度学习的基本模型,涉及医疗、自动驾驶、手语识别、音乐生成和自然语言处理等领域。
Datawhale整理了该门课程的详细介绍及参考资料:
https://mp.weixin.qq.com/s/kA-L8t5mGq6jExMBRjyg4g
2书籍
2.1神经网络与深度学习-复旦邱锡鹏
本书是入门深度学习领域的极佳教材,主要介绍了神经网络与深度学习中的基础 知识、主要模型(前馈网络、卷积网络、循环网络等)以及在计算机视觉、自然 语言处理等领域的应用。
https://mp.weixin.qq.com/s/-NaDpXsxvu4DpXqVNXIAvQ
2.2 «深度学习》
完成以上学习后,想要更加系统的建立深度学习的知识体系,阅读《深度学习》 准没错。该书从浅入深介绍了基础数学知识、机器学习经验以及现阶段深度学习 的理论和发展,它能帮助人工智能技术爱好者和从业人员在三位专家学者的思维 带领下全方位了解深度学习。
书籍介绍:《深度学习》通常又被称为花书,深度学习领域最经典的畅销书。由 全球知名的三位专家lanGoodfellow、YoshuaBengio和AaronCourville撰写,是 深度学习领域奠基性的经典教材。该书被大众尊称为“AI圣经”。
在线阅读
该书由众多网友众包翻译,电子版在以下地址获得:
https://github.com/exacity/deeplearningbook-chinese
2.3 «深度学习500问》
当你看完了所有的视频,研习了 AI圣经,一定充满了满脑子问号,此时不如来深度学习面试中常见的500个问题。
书籍介绍:DeepLearning-500-questions,作者是川大的一名优秀毕业生谈继勇。该项目以深度学习面试问答形式,收集了 500个问题和答案。内容涉及了 常用的概率知识、线性代数、机器学习、深度学习、计算机视觉等热点问题,该书目前尚未完结,却已经收获了 Github 2.4w stars。
项目地址:https://github.com/scutan90/DeepLearning-500-questions
3工具
3.1 TensorFlow 官方文档
学深度学习一定离不开TensorFlow
官方文档:https://www.tensorflow.org/api_docs/python/tf
中文文档:https://github.com/jikexueyuanwiki/tensorflow-zh
3.2 PyTorch官方文档
PyTorch是学深度学习的另一个主流框架
官方文档:https://pytorch.org/docs/stable/index.html
05
强化学习
1公开课
1.1 Reinforcement Learning-David Silver
与吴恩达的课程对于机器学习和深度学习初学者的意义相同,David Silver的这 门课程绝对是大多数人学习强化学习必选的课程。
课程从浅到深,把强化学习的内容娓娓道来,极其详尽。不过由于强化学习本身 的难度,听讲这门课还是有一定的门槛,建议还是在大致了解这个领域之后观看 该视频学习效果更佳,更容易找到学习的重点。
视频地址
B站地址(中文字幕):https://www.bilibili.com/video/av453577597fromnsearch &seid=9547815852611563503
课程原址:https://www.youtube.com/watch?v=2pWv7GOvufO
课程资料
课程PPT:http://wwwO.cs.ucl.ac.Uk/staff/d.silver/web/Teaching.html
课程笔记:https://www.zhihu.com/people/qqiangOO/posts
1.2李宏毅《深度强化学习》
David Silver的课程虽然内容详尽,但前沿的很多内容都没有被包括在内,这时,台大李宏毅的《深度强化学习》就是学习前沿动态的不二之选。
视频地址
B站地址(中文字幕):https://www.bilibili.com/video/av247240717fromnsearch &seid=9547815852611563503
课程原地址:https://www.youtube.com/watch7vn2pWv7GOvufO
课程资料
课程PPT:http://speech.ee.ntu.edu.tw/~tlkagk/courses_MLDS18.html
课程笔记:https://blog.csdn.net/cindy_11O2/article/details/879O5272
06
理论与应用
1自然语言处理
1.1 NLP是什么
自然语言处理(NLP, Natural Language Processing)是研究计算机处理人类语言的一门技术,目的是弥补人类交流(自然语言)和计算机理解(机器语言)之间的差距。NLP包含句法语义分析、信息抽取、文本挖掘、机器翻译、信息检索、问答系统和对话系统等领域。
1.2课程推荐
计算语言学 冯志伟 主要介绍了理论基础和历史发展,内容较枯燥,也可以跳过这个课程,直接进行接下来的的实践处理课程。
https://b23.tv/62YTWN
CS224n斯坦福深度自然语言处理课
17版中文字幕:https://www.bilibili.com/video/av41393758/?p=l
课程笔记:http://www・hankcs.com/?s=CS224n%E7%AC%94%E8%AE%B0
2019版课程主页:http://web.stanford.edu/class/cs224n/
自然语言处理-Dan Jurafsky 和 Chris Manning
B站英文字幕版:https://www.bilibili.com/video/av35805262/
学术激流网:http://academictorrents.com/details/d2c8f8f1651740520b7dfab2
3438d89bc8c0c0ab
1.3书籍推荐
《Python自然语言处理》:入门读物,整本书不仅涉及了语料库的操作,也对 传统的基于规则的方法有所涉及。全书包括了分词(tokenization)、词性标注(POS)、语块(Chunk)标注、句法剖析与语义剖析等方面。
《自然语言处理综论》By Daniel Jurafsky和James H. Martin
本书十分权威,是经典的NLP教科书,涵盖了经典自然语言处理、统计自然语言 处理、语音识别和计算语言学等方面。
《统计自然语言处理基础》By Chris Manning和HinrichSchUtze
更高级的统计NLP方法,在统计基本部分和n元语法部分介绍得都很不错。
1.4博客推荐
我爱自然语言处理,地址:http://www.52nlp.cn/
TFIDF、文档相似度等等在这个网站上都有通俗易懂的解释
语言日志博客(Mark Liberman),地址:http://languagelog.ldc.upenn.edu/nl l/
natural language processing blog,地址:https://nlpers.blogspot.com/
1.5项目推荐
基于LSTM的中文问答系统,https://github.com/S-H-Y-GitHub/QA
基于RNN的文本生成器,https://github.com/karpathy/char-rnn
基于char-rnn的汪峰歌词生成器,https://github.com/phunterlau/wangfeng-rnn
用RNN生成手写数字,https://github.com/skaae/lasagne-draw
1.6开源NLP工具包
中文NLP相关:https://github.com/crownpku/Awesome-Chinese-NLP 英文NLP相关:NLTK: http://www.nltk.org/
TextBlob: http://textblob.readthedocs.org/en/dev/
Gensim: http://radimrehurek.com/gensim/
Pattern: http://www.clips.ua.ac.be/pattern
Spacy: http://spacy.io
Orange: http://orange.biolab.si/features/
Pineapple: https://github.com/proycon/pynlpl
1.7相关论文
100 Must-Read NLP Papers:https://github.com/mhagiwara/100-nlp-papers
07
相关资源
1 Arxiv
Arxiv Stats, Arxiv 机器学习最新论文检索主页地址:https://arxiv.org/list/stat ,ML/recent?ref=bestofml.com
Arxiv Sanity Preserver, Andrej Karpathy 开发了 Arxiv Sanity Preserver, 帮 助分类、搜索和过滤特征
主页地址:http://www.arxiv-sanity.com/7refnbestofml.com
2 Papers with Code
Papers with Code(Browse state-of-the-art)
这个网站叫做Browse state-of-the-art。它将ArXiv上的最新深度学习论文与GitHub上的开源代码联系起来。该项目目前包含了 651个排行榜,1016个深度 学习任务,795个数据集,以及重磅的10257个含复现代码的优秀论文。简直就 是一个寻找论文和代码的利器。它将1016个深度学习任务分成了 16大类,涉 及了深度学习的各个方面。
主页地址:https://paperswithcode.com/sota
举个例子:
NLP:https://paperswithcode.com/area/natural-language-processing
Papers with Code(Sorted by stars)
这份资源收集了 AI领域从2013 - 2018年所有的论文,并按照在GitHub上的标 星数量进行排序。
GitHub 项目地址:https://github.com/zziz/pwc
3 Deep Learning Papers 阅读路线
如果你是深度学习领域的新手,你可能会遇到的第一个问题是“我应该从哪篇论 文开始阅读?”下面是一个深入学习论文的阅读路线图!
GitHub 项目地址:https:〃github.com/floodsung/Deep-Learning-Papers-Readi ng-Roadmap
这份深度学习论文阅读路线分为三大块:
• Deep Learning History and Basics
• Deep Learning Method
• Applications
4 Deep Learning Object Detection
目标检测(Object Detection)是深度学习CV领域的一个核心研究领域和重要 分支。纵观2013年到2019年,从最早的R-CNN、Fast R-CNN到后来的YOLO v2、YOLO v3再到今年的M2Det,新模型层出不穷,性能也越来越好!
本资源对目标检测近几年的发展和相关论文做出一份系统介绍,总结一份超全的 文献paper列表。
GitHub 项目地址:https://github.com/hoya012/deep_learning_object_detectio n
5知名会议
会议
• NeurlPS:https://nips.cc/
• ICML:https://icml.cc/
• ICLR: https://iclr.cc/
• AAAI:https://aaai.org/Conferences/AAAI-19/
• IJCAI:https://www.ijcai.org/
• UAI:http://www.auai.org/uai2019/index.php
自然语言处理:
• ACL:http://www.aclcargo.com/
•EMNLP: https://www.aclweb.org/portal/content/emnlp-2018
• NAACL: https://naacl2019.org/
知名期刊:
•JAIR: https://www.jair.org/index.php/jair
• JMLR:
http://www.jmlr.org/
后记
以上是本文收集到的所有计算语言学(自然语言处理 Natural Language Processing)入门自学的所有资源,NLP是非常难的领域,可是如果学好了,也是回报非常大的,可能以上课程学完会花费非常大的精力和时间,但绝对物超所值,感谢知名开源平台,AI技术平台以及领域专家:Datawhale, ApacheCN, AI有道和黄海广博士联合整理贡献。
愿与诸君共勉!
此外,弱弱让大家帮个小忙,点一下今天公众号发的第一篇文章,只是一篇恰饭广告,谢谢大家的支持了
• end •
公众号 : sysuxz666
名称:语言逻辑与应用
图文:网络(侵删)
● 扫码关注我们